#ifndef __WIZ_ALGEBRA_UTILS_BASE_HPP__SHANHAOBO_19800429__
#define __WIZ_ALGEBRA_UTILS_BASE_HPP__SHANHAOBO_19800429__

#include "../Base/WizAlgebraBase.hpp"

namespace Wiz
{
    template<class T>
    WIZ_INLINE T GetEpsilon()
    {
        return 0;
    }

    template<>
    WIZ_INLINE ::Wiz::Real32::Type GetEpsilon()
    {
        return ::Wiz::Real32::Epsilon;
    }

    template<>
    WIZ_INLINE ::Wiz::Real64::Type GetEpsilon()
    {
        return ::Wiz::Real64::Epsilon;
    }

    template<class T>
    WIZ_INLINE T GetEpsilonSqr()
    {
        return 0;
    }

    template<>
    WIZ_INLINE ::Wiz::Real32::Type GetEpsilonSqr()
    {
        return ::Wiz::Real32::EpsilonSqr;
    }

    template<>
    WIZ_INLINE ::Wiz::Real64::Type GetEpsilonSqr()
    {
        return ::Wiz::Real64::EpsilonSqr;
    }
} /// end of namespace Wiz

#endif /*__WIZ_ALGEBRA_UTILS_BASE_HPP__SHANHAOBO_19800429__*/
